home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_zsh.idb / usr / freeware / catman / u_man / cat1 / zshparam.Z / zshparam
Encoding:
Text File  |  1998-05-21  |  42.0 KB  |  925 lines

  1.  
  2.  
  3.  
  4.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.       zshparam - zsh parameters
  10.  
  11.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNNSSSS
  12.       A parameter has a name, a value, and a number    of attributes.
  13.       A name may be    any sequence of    alphanumeric characters    and
  14.       _'s, or the single characters    *, @, #, ?, -, $, or !.     The
  15.       value    may be either a    _s_c_a_l_a_r (a string), an integer, or an
  16.       array.  To assign a scalar or    integer    value to a parameter,
  17.       use the ttttyyyyppppeeeesssseeeetttt builtin.  To assign an array value, use sssseeeetttt
  18.       ----AAAA _n_a_m_e _v_a_l_u_e    ....  The value    of a parameter may also    be
  19.       assigned by writing:
  20.  
  21.            _n_a_m_e=_v_a_l_u_e ...
  22.  
  23.       If the integer attribute, -iiii,    is set for _n_a_m_e, the _v_a_l_u_e is
  24.       subject to arithmetic    evaluation.
  25.  
  26.       The value of an array    parameter may be assigned by writing:
  27.  
  28.            _n_a_m_e=(_v_a_l_u_e ...)    ...
  29.       Individual elements of an array may be selected using    a
  30.       subscript.  A    subscript of the form [[[[_e_x_p]]]] selects the    single
  31.       element _e_x_p, where _e_x_p is an arithmetic expression which
  32.       will be subject to arithmetic    expansion as if    it were
  33.       surrounded by    "$((...))". The    elements are numbered
  34.       beginning with 1 unless the KKKKSSSSHHHH____AAAARRRRRRRRAAAAYYYYSSSS option    is set when
  35.       they are numbered from zero.
  36.  
  37.       A subscript of the form [[[[****]]]] or [[[[@@@@]]]] evaluates to all elements
  38.       of an    array; there is    no difference between the two except
  39.       when they appear within double quotes.  "$foo[*]" evaluates
  40.       to "$foo[1] $foo[2] ...", while "$foo[@]" evaluates to
  41.       "$foo[1]" "$foo[2]", etc.
  42.  
  43.       A subscript of the form [[[[_e_x_p_1,,,,_e_x_p_2]]]] selects all elements in
  44.       the range _e_x_p_1 to _e_x_p_2, inclusive.  If one of    the subscripts
  45.       evaluates to a negative number, say -_n, then the _nth element
  46.       from the end of the array is used.  Thus "$foo[-3]" is the
  47.       third    element    from the end of    the array _f_o_o, and "$foo[1,-
  48.       1]" is the same as "$foo[*]".
  49.  
  50.       Subscripting may also    be performed on    non-array values, in
  51.       which    case the subscripts specify a substring    to be
  52.       extracted.  For example, if FFFFOOOOOOOO is set to ffffoooooooobbbbaaaarrrr, then eeeecccchhhhoooo
  53.       $$$$FFFFOOOOOOOO[[[[2222,,,,5555]]]] prints oooooooobbbbaaaa.
  54.  
  55.       Subscripts may be used inside    braces used to delimit a
  56.       parameter name, thus $$$${{{{ffffoooooooo[[[[2222]]]]}}}} is equivalent to $$$$ffffoooooooo[[[[2222]]]].  If
  57.       the KKKKSSSSHHHH____AAAARRRRRRRRAAAAYYYYSSSS option    is set,    the braced form    is the only
  58.       one that will    work, the subscript otherwise not being
  59.       treated specially.
  60.  
  61.  
  62.  
  63.      Page 1                         (printed 4/24/98)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  71.  
  72.  
  73.  
  74.       If a subscript is used on the    left side of an    assignment the
  75.       selected range is replaced by    the expression on the right
  76.       side.
  77.  
  78.       If the opening bracket or the    comma is directly followed by
  79.       an opening parentheses the string up to the matching closing
  80.       one is considered to be a list of flags. The flags currently
  81.       understood are:
  82.  
  83.            eeee    this option    has no effect and retained for
  84.             backward compatibility only
  85.  
  86.            wwww    if the parameter subscripted is a scalar than this
  87.             flag makes subscription work on a per-word basis
  88.             instead of characters
  89.  
  90.            ssss::::_s_t_r_i_n_g::::
  91.             this gives the _s_t_r_i_n_g that separates words (for
  92.             use    with the wwww flag)
  93.  
  94.            pppp    Recognize the same escape sequences    as the pppprrrriiiinnnntttt
  95.             builtin in the string argument of a    subsequent ssss
  96.             flag.
  97.  
  98.            ffff    if the parameter subscripted is a scalar than this
  99.             flag makes subscription work on a per-line basis
  100.             instead of characters.  This is a shorthand    for
  101.             ppppwwwwssss::::\\\\nnnn::::.
  102.  
  103.            rrrr    if this flag is given the _e_x_p is taken as a
  104.             pattern and    the result is the first    matching array
  105.             element, substring or word (if the parameter is an
  106.             array, if it is a scalar, or if it is a scalar and
  107.             the    wwww flag is given, respectively);    note that this
  108.             is like giving a number: $$$$ffffoooooooo[[[[((((rrrr))))????????,,,,3333]]]] and
  109.             $$$$ffffoooooooo[[[[((((rrrr))))????????,,,,((((rrrr))))ffff****]]]] work
  110.  
  111.            RRRR    like rrrr, but    gives the last match
  112.  
  113.            iiii    like rrrr, but    gives the index    of the match instead;
  114.             this may not be combined with a second argument
  115.  
  116.            IIII    like iiii, but    gives the index    of the last match
  117.  
  118.            nnnn::::_e_x_p_r::::
  119.             if combined    with rrrr,    RRRR, , or    IIII, makes them give the
  120.             _n'th or _n'th last match (if    _e_x_p_r evaluates to _n)
  121.  
  122.     PPPPoooossssiiiittttiiiioooonnnnaaaallll PPPPaaaarrrraaaammmmeeeetttteeeerrrrssss
  123.       Positional parameters    are set    by the shell on    invocation, by
  124.       the sssseeeetttt builtin, or by direct    assignment.  The parameter _n,
  125.       where    _n is a number, is the _nth positional parameter.     The
  126.  
  127.  
  128.  
  129.      Page 2                         (printed 4/24/98)
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  137.  
  138.  
  139.  
  140.       parameters ****,    @@@@, and aaaarrrrggggvvvv are    arrays containing all the
  141.       positional parameters; thus aaaarrrrggggvvvv[_n], etc. is equivalent to
  142.       simply _n.
  143.  
  144.     SSSSppppeeeecccciiiiaaaallll    PPPPaaaarrrraaaammmmeeeetttteeeerrrrssss
  145.       The following    parameters are automatically set by the    shell:
  146.  
  147.            !!!!    The    process    id of the last background command
  148.             invoked.
  149.            ####    The    number of positional parameters    in decimal.
  150.            AAAARRRRGGGGCCCC Same as ####. It has no special meaning in sh/ksh
  151.             compatibility mode.
  152.            $$$$    The    process    id of this shell.
  153.            ----    Flags supplied to the shell    on invocation or by
  154.             the    sssseeeetttt or sssseeeettttoooopppptttt commands.
  155.            ****    An array containing    the positional parameters.
  156.            aaaarrrrggggvvvv Same as ****. It has no special meaning in sh/ksh
  157.             compatibility mode.
  158.            @@@@    Same as aaaarrrrggggvvvv[[[[@@@@]]]] but    it can be used in sh/ksh
  159.             compatibility mode.
  160.            ????    The    exit value returned by the last    command.
  161.            ssssttttaaaattttuuuussss
  162.             Same as ????. It has no special meaning in sh/ksh
  163.             compatibility mode.
  164.            ____    The    last argument of the previous command.    Also,
  165.             this parameter is set in the environment of    every
  166.             command executed to    the full pathname of the
  167.             command.
  168.            EEEEGGGGIIIIDDDD The    effective group    id of the shell    process.  If
  169.             you    have sufficient    privileges, you    may change the
  170.             effective group id of the shell process by
  171.             assigning to this parameter.  Also (assuming
  172.             sufficient privileges), you    may start a single
  173.             command with a different effective group id    by:
  174.             ((((EEEEGGGGIIIIDDDD====eeeeggggiiiidddd ;;;; ccccoooommmmmmmmaaaannnndddd))))
  175.            EEEEUUUUIIIIDDDD The    effective user id of the shell process.     If
  176.             you    have sufficient    privileges, you    may change the
  177.             effective user id of the shell process by
  178.             assigning to this parameter.  Also (assuming
  179.             sufficient privileges), you    may start a single
  180.             command with a different effective user id by:
  181.             ((((EEEEUUUUIIIIDDDD====eeeeuuuuiiiidddd ;;;; ccccoooommmmmmmmaaaannnndddd))))
  182.            EEEERRRRRRRRNNNNOOOO
  183.             The    value of errno as set by the most recently
  184.             failed system call.     This value is system
  185.             dependent and is intended for debugging purposes.
  186.            GGGGIIIIDDDD  The    group id of the    shell process.    If you have
  187.             sufficient privileges, you may change the group id
  188.             of the shell process by assigning to this
  189.             parameter.    Also (assuming sufficient privileges),
  190.             you    may start a single command under a different
  191.             group id by:
  192.  
  193.  
  194.  
  195.      Page 3                         (printed 4/24/98)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  203.  
  204.  
  205.  
  206.             ((((GGGGIIIIDDDD====ggggiiiidddd ;;;; ccccoooommmmmmmmaaaannnndddd))))
  207.            HHHHOOOOSSSSTTTT The    current    hostname.
  208.            LLLLIIIINNNNEEEENNNNOOOO
  209.             The    line number of the current line    within the
  210.             current script being executed.
  211.            LLLLOOOOGGGGNNNNAAAAMMMMEEEE
  212.             If the corresponding variable is not set in    the
  213.             environment    of the shell, it is initialized    to the
  214.             login name corresponding to    the current login
  215.             session. This parameter is exported    by default but
  216.             this can be    disabled using the ttttyyyyppppeeeesssseeeetttt builtin.
  217.            MMMMAAAACCCCHHHHTTTTYYYYPPPPEEEE
  218.             The    machine    type (microprocessor class or machine
  219.             model), as determined at compile time.
  220.            OOOOLLLLDDDDPPPPWWWWDDDD
  221.             The    previous working directory.
  222.            OOOOPPPPTTTTAAAARRRRGGGG
  223.             The    value of the last option argument processed by
  224.             the    ggggeeeettttooooppppttttssss    command.
  225.            OOOOPPPPTTTTIIIINNNNDDDD
  226.             The    index of the last option argument processed by
  227.             the    ggggeeeettttooooppppttttssss    command.
  228.            OOOOSSSSTTTTYYYYPPPPEEEE
  229.             The    operating system, as determined    at compile
  230.             time.
  231.            PPPPPPPPIIIIDDDD The    process    id of the parent of the    shell.
  232.            PPPPWWWWDDDD  The    present    working    directory.
  233.            RRRRAAAANNNNDDDDOOOOMMMM
  234.             A random integer from 0 to 32767, newly generated
  235.             each time this parameter is    referenced.  The
  236.             random number generator can    be seeded by assigning
  237.             a numeric value to RRRRAAAANNNNDDDDOOOOMMMM.
  238.            SSSSEEEECCCCOOOONNNNDDDDSSSS
  239.             The    number of seconds since    shell invocation.  If
  240.             this parameter is assigned a value,    then the value
  241.             returned upon reference will be the    value that was
  242.             assigned plus the number of    seconds    since the
  243.             assignment.
  244.            SSSSHHHHLLLLVVVVLLLL
  245.             Incremented    by one each time a new shell is
  246.             started.
  247.            ssssiiiiggggnnnnaaaallllssss
  248.             An array containing    the names of the signals.
  249.            TTTTTTTTYYYY  The    name of    the tty    associated with    the shell, if
  250.             any.
  251.            TTTTTTTTYYYYIIIIDDDDLLLLEEEE
  252.             The    idle time of the tty associated    with the shell
  253.             in seconds or -1 if    there is no such tty.
  254.            UUUUIIIIDDDD  The    user id    of the shell process.  If you have
  255.             sufficient privileges, you may change the user id
  256.             of the shell by assigning to this parameter.  Also
  257.             (assuming sufficient privileges), you may start a
  258.  
  259.  
  260.  
  261.      Page 4                         (printed 4/24/98)
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  269.  
  270.  
  271.  
  272.             single command under a different user id by:
  273.             ((((UUUUIIIIDDDD====uuuuiiiidddd ;;;; ccccoooommmmmmmmaaaannnndddd))))
  274.            UUUUSSSSEEEERRRRNNNNAAAAMMMMEEEE
  275.             The    username corresponding to the user id of the
  276.             shell process.  If you have    sufficient privileges,
  277.             you    may change the username    (and also the user id
  278.             and    group id) of the shell by assigning to this
  279.             parameter.    Also (assuming sufficient privileges),
  280.             you    may start a single command under a different
  281.             username (and user id and group id)    by:
  282.             ((((UUUUSSSSEEEERRRRNNNNAAAAMMMMEEEE====uuuusssseeeerrrrnnnnaaaammmmeeee ;;;; ccccoooommmmmmmmaaaannnndddd))))
  283.            VVVVEEEENNNNDDDDOOOORRRR
  284.             The    vendor,    as determined at compile time.
  285.            ZZZZSSSSHHHHNNNNAAAAMMMMEEEE
  286.             Expands to the basename of the command used    to
  287.             invoke this    instance of zzzzsssshhhh.
  288.            ZZZZSSSSHHHH____NNNNAAAAMMMMEEEE
  289.             Expands to the basename of the command used    to
  290.             invoke this    instance of zzzzsssshhhh.
  291.            ZZZZSSSSHHHH____VVVVEEEERRRRSSSSIIIIOOOONNNN
  292.             The    version    number of this zzzzsssshhhh.
  293.  
  294.       The following    parameters are used by the shell:
  295.  
  296.            AAAARRRRGGGGVVVV0000
  297.             If exported, it's value is used as argv[0] of
  298.             external commands.    Usually    used in    constructs
  299.             like 'ARGV0=emacs nethack'.
  300.            BBBBAAAAUUUUDDDD The    baud rate of the current connection.  Used by
  301.             the    line editor update mechanism to    compensate for
  302.             a slow terminal by delaying    updates    until
  303.             necessary.    This may be profitably set to a    lower
  304.             value in some circumstances, e.g.  for slow    modems
  305.             dialing into a communications server which is
  306.             connected to a host    via a fast link; in this case,
  307.             this variable would    be set by default to the speed
  308.             of the fast    link, and not the modem.  This
  309.             parameter should be    set to the baud    rate of    the
  310.             slowest part of the    link for best performance. The
  311.             compensation mechanism can be turned off by
  312.             setting the    variable to zero.
  313.            ccccddddppppaaaatttthhhh ((((CCCCDDDDPPPPAAAATTTTHHHH))))
  314.             An array (colon-separated list) of directories
  315.             specifying the search path for the ccccdddd command.
  316.            CCCCOOOOLLLLUUUUMMMMNNNNSSSS
  317.             The    number of columns for this terminal session.
  318.             Used for printing select lists and for the line
  319.             editor.
  320.            DDDDIIIIRRRRSSSSTTTTAAAACCCCKKKKSSSSIIIIZZZZEEEE
  321.             The    maximum    size of    the directory stack.  If the
  322.             stack gets larger than this, it will be truncated
  323.             automatically.  This is useful with    the AAAAUUUUTTTTOOOO____PPPPUUUUSSSSHHHHDDDD
  324.  
  325.  
  326.  
  327.      Page 5                         (printed 4/24/98)
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  335.  
  336.  
  337.  
  338.             option.
  339.            FFFFCCCCEEEEDDDDIIIITTTT
  340.             The    default    editor for the ffffcccc builtin.
  341.            ffffiiiiggggnnnnoooorrrreeee ((((FFFFIIIIGGGGNNNNOOOORRRREEEE))))
  342.             An array (colon separated list) containing the
  343.             suffixes of    files to be ignored during filename
  344.             completion.     However, if the completion generates
  345.             only files which would match if this variable
  346.             would be ignored, than these files are completed
  347.             anyway.
  348.            ffffppppaaaatttthhhh ((((FFFFPPPPAAAATTTTHHHH))))
  349.             An array (colon separated list) of directories
  350.             specifying the search path for function
  351.             definitions.  This path is searched    when a
  352.             function with the -uuuu attribute is referenced.  If
  353.             an executable file is found, then it is read and
  354.             executed in    the current environment.
  355.            hhhhiiiissssttttcccchhhhaaaarrrrssss
  356.             Three characters used by the shell's history and
  357.             lexical analysis mechanism.     The first character
  358.             signals the    start of a history substitution
  359.             (default `!').  The    second character signals the
  360.             start of a quick history substitution (default
  361.             `^').  The third character is the comment
  362.             character (default `#').
  363.            HHHHIIIISSSSTTTTCCCCHHHHAAAARRRRSSSS
  364.             Same as hhhhiiiissssttttcccchhhhaaaarrrrssss....
  365.            HHHHIIIISSSSTTTTFFFFIIIILLLLEEEE
  366.             The    file to    save the history in when an
  367.             interactive    shell exits.  If unset,    the history is
  368.             not    saved.
  369.            HHHHIIIISSSSTTTTSSSSIIIIZZZZEEEE
  370.             The    maximum    size of    the history list.
  371.            HHHHOOOOMMMMEEEE The    default    argument for the ccccdddd command.
  372.            IIIIFFFFSSSS  Internal field separators, normally    space, tab,
  373.             and    newline, that are used to separate words which
  374.             result from    command    or parameter substitution and
  375.             words read by the rrrreeeeaaaadddd builtin.  Any characters
  376.             from the set space,    tab and    newline    that appear in
  377.             the    IFS are    called _I_F_S _w_h_i_t_e _s_p_a_c_e.     One or    more
  378.             IFS    white space characters or one non-IFS white
  379.             space character together with any adjacent IFS
  380.             white space    character delimit a field.  If an IFS
  381.             white space    character appears twice    consecutively
  382.             in the IFS,    this character is treated as if    it
  383.             were not an    IFS white space    character.
  384.            KKKKEEEEYYYYTTTTIIIIMMMMEEEEOOOOUUUUTTTT
  385.             The    time the shell waits, in hundredths of
  386.             seconds, for another key to    be pressed when
  387.             reading bound multi-character sequences.
  388.            LLLLAAAANNNNGGGG This variable determines the locale    category for
  389.             any    category not specifically selected via a
  390.  
  391.  
  392.  
  393.      Page 6                         (printed 4/24/98)
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  401.  
  402.  
  403.  
  404.             variable starting with LLLLCCCC____.
  405.            LLLLCCCC____AAAALLLLLLLL
  406.             This variable overrides the    value of the LANG
  407.             variable and the value of any of the other
  408.             variables starting with LLLLCCCC____.
  409.            LLLLCCCC____CCCCOOOOLLLLLLLLAAAATTTTEEEE
  410.             This variable determines the locale    category for
  411.             character collation    information within ranges in
  412.             glob brackets and for sorting.
  413.            LLLLCCCC____CCCCTTTTYYYYPPPPEEEE
  414.             This variable determines the locale    category for
  415.             character handling functions.
  416.            LLLLCCCC____MMMMEEEESSSSSSSSAAAAGGGGEEEESSSS
  417.             This variable determines the language in which
  418.             messages should be written.     Note that zsh does
  419.             not    use message catalogs.
  420.            LLLLCCCC____TTTTIIIIMMMMEEEE
  421.             This variable determines the locale    category for
  422.             date and time formatting in    promt escape
  423.             sequences.
  424.            LLLLIIIINNNNEEEESSSS
  425.             The    number of lines    for this terminal session.
  426.             Used for printing select lists and for the line
  427.             editor.
  428.            LLLLIIIISSSSTTTTMMMMAAAAXXXX
  429.             In the line    editor,    the number of filenames    to
  430.             list without asking    first.    If set to zero,    the
  431.             shell asks only if the top of the listing would
  432.             scroll off the screen.
  433.            LLLLOOOOGGGGCCCCHHHHEEEECCCCKKKK
  434.             The    interval in seconds between checks for
  435.             login/logout activity using    the wwwwaaaattttcccchhhh parameter.
  436.            MMMMAAAAIIIILLLL If this parameter is set and mmmmaaaaiiiillllppppaaaatttthhhh is not set,
  437.             the    shell looks for    mail in    the specified file.
  438.            MMMMAAAAIIIILLLLCCCCHHHHEEEECCCCKKKK
  439.             The    interval in seconds between checks for new
  440.             mail.
  441.            mmmmaaaaiiiillllppppaaaatttthhhh    ((((MMMMAAAAIIIILLLLPPPPAAAATTTTHHHH))))
  442.             An array (colon-separated list) of filenames to
  443.             check for new mail.     Each filename can be followed
  444.             by a ? and a message that will be printed.    The
  445.             message will undergo parameter expansion, command
  446.             substitution and arithmetic    substitution with the
  447.             variable $$$$____    defined    as the name of the file    that
  448.             has    changed.  The default message is "_Y_o_u _h_a_v_e _n_e_w
  449.             _m_a_i_l." If an element is a directory    instead    of a
  450.             file the shell will    recursively check every    file
  451.             in every subdirectory of the element.
  452.            mmmmaaaannnnppppaaaatttthhhh ((((MMMMAAAANNNNPPPPAAAATTTTHHHH))))
  453.             An array (colon-separated list) whose value    is not
  454.             used by the    shell.    The mmmmaaaannnnppppaaaatttthhhh array can be
  455.             useful, however, since setting it also sets
  456.  
  457.  
  458.  
  459.      Page 7                         (printed 4/24/98)
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  467.  
  468.  
  469.  
  470.             MMMMAAAANNNNPPPPAAAATTTTHHHH, and vice versa.
  471.            NNNNUUUULLLLLLLLCCCCMMMMDDDD
  472.             The    command    name to    assume if a redirection    is
  473.             specified with no command.    Defaults to ccccaaaatttt.  For
  474.             sh/ksh-like    behavior, change this to ::::.  For csh-
  475.             like behavior, unset this parameter; the shell
  476.             will print an error    message    if null    commands are
  477.             entered.
  478.            ppppaaaatttthhhh ((((PPPPAAAATTTTHHHH))))
  479.             An array (colon-separated list) of directories to
  480.             search for commands.  When this parameter is set,
  481.             each directory is scanned and all files found are
  482.             put    in a hash table.
  483.            PPPPOOOOSSSSTTTTEEEEDDDDIIIITTTT
  484.             This string    is output whenever the line editor
  485.             exits.  It usually contains    termcap    strings    to
  486.             reset the terminal.
  487.            PPPPSSSS1111  The    primary    prompt string, printed before a
  488.             command is read; the default is "%m%# ".  If the
  489.             escape sequence takes an optional integer, it
  490.             should appear between the '%' and the next
  491.             character of the sequence.    The following escape
  492.             sequences are recognized:
  493.  
  494.             %%%%%%%%     A `%'.
  495.             %%%%))))     A `)'.
  496.             %%%%dddd
  497.             %%%%////     Present working directory ($PWD).
  498.             %%%%~~~~     $PWD.    If it has a named directory as its
  499.              prefix, that part is replaced by a ~ followed
  500.              by the    name of    the directory.    If it starts
  501.              with $HOME, that part is replaced by a    ~.
  502.             %%%%cccc
  503.             %%%%....
  504.             %%%%CCCC     Trailing component of $PWD.  An integer may
  505.              follow    the '%'    to get more than one
  506.              component.  Unless %%%%CCCC is used,    tilde
  507.              expansion is performed    first.
  508.             %%%%hhhh
  509.             %%%%!!!!     Current history event number
  510.             %%%%MMMM     The full machine hostname.
  511.             %%%%mmmm     The hostname up to the    first '.'.  An integer
  512.              may follow the    '%' to specify how many
  513.              components of the hostname are    desired.
  514.             %%%%SSSS ((((%%%%ssss))))
  515.              Start (stop) standout mode.
  516.             %%%%UUUU ((((%%%%uuuu))))
  517.              Start (stop) underline    mode.
  518.             %%%%BBBB ((((%%%%bbbb))))
  519.              Start (stop) boldface mode.
  520.             %%%%tttt
  521.             %%%%@@@@     Current time of day, in 12-hour, am/pm
  522.  
  523.  
  524.  
  525.      Page 8                         (printed 4/24/98)
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  533.  
  534.  
  535.  
  536.              format.
  537.             %%%%TTTT     Current time of day, in 24-hour format.
  538.             %%%%****     Current time of day in    24-hour    format,    with
  539.              seconds.
  540.             %%%%nnnn     $$$$UUUUSSSSEEEERRRRNNNNAAAAMMMMEEEE.
  541.             %%%%wwww     The date in day-dd format.
  542.             %%%%WWWW     The date in mm/dd/yy format.
  543.             %%%%DDDD     The date in yy-mm-dd format.
  544.             %%%%DDDD{{{{_s_t_r_i_n_g}}}}
  545.              _s_t_r_i_n_g    is formatted using the ssssttttrrrrffffttttiiiimmmmeeee
  546.              function.  See    ssssttttrrrrffffttttiiiimmmmeeee((((3333)))) for    more details,
  547.              if your system    has it.
  548.             %%%%llll     The line (tty)    the user is logged in on.
  549.             %%%%????     The return code of the    last command executed
  550.              just before the prompt.
  551.             %%%%____     The status of the parser, i.e.    the shell
  552.              constructs (like `if' and `for') that have
  553.              been started on the command line. If given an
  554.              integer number    that many strings will be
  555.              printed; zero or no integer means print as
  556.              many as there are.
  557.             %%%%EEEE     Clears    to end of line.
  558.             %%%%####     A '#' if the shell is running as root,    a '%'
  559.              if not.  Equivalent to    %(#.#.%%).
  560.             %%%%vvvv     The value of the first    element    of the $psvar
  561.              array parameter.  Following the '%' with an
  562.              integer gives that element of the array.
  563.             %%%%{{{{...%%%%}}}}
  564.              Include a string as a literal escape
  565.              sequence.  The    string within the braces
  566.              should    not change the cursor position.
  567.             %%%%((((xxxx._t_r_u_e-_t_e_x_t._f_a_l_s_e-_t_e_x_t))))
  568.              Specifies a ternary expression.  The
  569.              character following the xxxx is arbitrary; the
  570.              same character    is used    to separate the    text
  571.              for the "true"    result from that for the
  572.              "false" result.  This separator may not
  573.              appear    in the _t_r_u_e-_t_e_x_t, except as part of a
  574.              % sequence.  A    `)' may    appear in the _f_a_l_s_e-
  575.              _t_e_x_t as `%)'.    _T_r_u_e-_t_e_x_t and _f_a_l_s_e-_t_e_x_t may
  576.              both contain arbitrarily-nested escape
  577.              sequences, including further ternary
  578.              expressions.  The left    parenthesis may    be
  579.              preceded or followed by a positive integer _n,
  580.              which defaults    to zero.  The test character xxxx
  581.              may be    any of the following:
  582.  
  583.              cccc
  584.              ....
  585.              ~~~~    True if the current path,    with prefix
  586.                   replacement, has at least    _n elements.
  587.              ////
  588.  
  589.  
  590.  
  591.      Page 9                         (printed 4/24/98)
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  599.  
  600.  
  601.  
  602.              CCCC    True if the current absolute path    has at
  603.                   least _n elements.
  604.              tttt    True if the time in minutes is equal to
  605.                   _n.
  606.              TTTT    True if the time in hours    is equal to _n.
  607.              dddd    True if the day of the month is equal to
  608.                   _n.
  609.              DDDD    True if the month    is equal to _n (January
  610.                   =    0).
  611.              wwww    True if the day of the week is equal to
  612.                   _n    (Sunday    = 0).
  613.              ????    True if the exit status of the last
  614.                   command was _n.
  615.              ####    True if the effective uid    of the current
  616.                   process is _n.
  617.              gggg    True if the effective gid    of the current
  618.                   process is _n.
  619.              LLLL    True if the SHLVL    parameter is at    least
  620.                   _n.
  621.              SSSS    True if the SECONDS parameter is at
  622.                   least _n.
  623.              vvvv    True if the array    psvar has at least _n
  624.                   elements.
  625.              ____    True if at least _n shell constructs were
  626.                   started.
  627.             %%%%<<<<_s_t_r_i_n_g<<<<
  628.             %%%%>>>>_s_t_r_i_n_g>>>>
  629.             %%%%[[[[xxxx_s_t_r_i_n_g]]]]
  630.              Specifies truncation behaviour.  The third
  631.              form is equivalent to `%_x_s_t_r_i_n_g_x', i.e. _x may
  632.              be `<'    or `>'.     The numeric argument, which
  633.              in the    third form may appear immediately
  634.              after the `[',    specifies the maximum
  635.              permitted length of the various strings that
  636.              can be    displayed in the prompt.  If this
  637.              integer is zero, or missing, truncation is
  638.              disabled.  Truncation is initially disabled.
  639.              The forms with    `<' truncate at    the left of
  640.              the string, and the forms with    `>' truncate
  641.              at the    right of the string.  For example, if
  642.              the current directory is `/home/pike',    the
  643.              prompt    `%8<..<%/' will    expand to `..e/pike'.
  644.              The _s_t_r_i_n_g will be displayed in place of the
  645.              truncated portion of any string.  In this
  646.              string, the terminating character (`<', `>'
  647.              or `]'), or in    fact any character, may    be
  648.              quoted    by a preceding `\'.  % sequences are
  649.              _n_o_t treated specially.     If the    _s_t_r_i_n_g is
  650.              longer    than the specified truncation length,
  651.              it will appear    in full, completely replacing
  652.              the truncated string.
  653.  
  654.  
  655.  
  656.  
  657.      Page 10                         (printed 4/24/98)
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  665.  
  666.  
  667.  
  668.            PPPPSSSS2222  The    secondary prompt, printed when the shell needs
  669.             more information to    complete a command.
  670.             Recognizes the same    escape sequences as $$$$PPPPSSSS1111.  The
  671.             default is "%_> ", which displays any shell
  672.             constructs or quotation marks which    are currently
  673.             being processed.
  674.            PPPPSSSS3333  Selection prompt used within a sssseeeelllleeeecccctttt loop.
  675.             Recognizes the same    escape sequences as $$$$PPPPSSSS1111.  The
  676.             default is "?# ".
  677.            PPPPSSSS4444  The    execution trace    prompt.     Default is "+ ".
  678.            PPPPRRRROOOOMMMMPPPPTTTT
  679.            PPPPRRRROOOOMMMMPPPPTTTT2222
  680.            PPPPRRRROOOOMMMMPPPPTTTT3333
  681.            PPPPRRRROOOOMMMMPPPPTTTT4444
  682.             Same as PPPPSSSS1111, PPPPSSSS2222, PPPPSSSS3333, and PPPPSSSS4444, respectively.
  683.             These parameters do    not have any special meaning
  684.             in sh/ksh compatibility mode.
  685.            ppppssssvvvvaaaarrrr ((((PPPPSSSSVVVVAAAARRRR))))
  686.             An array (colon-separated list) whose first    nine
  687.             values can be used in PPPPRRRROOOOMMMMPPPPTTTT strings.  Setting
  688.             ppppssssvvvvaaaarrrr also sets PPPPSSSSVVVVAAAARRRR, and vice versa.
  689.            pppprrrroooommmmpppptttt
  690.             Same as PPPPSSSS1111. It has    no special meaning in sh/ksh
  691.             compatibility mode.
  692.            RRRREEEEAAAADDDDNNNNUUUULLLLLLLLCCCCMMMMDDDD
  693.             The    command    name to    assume if a single input
  694.             redirection    is specified with no command.
  695.             Defaults to    mmmmoooorrrreeee.
  696.            RRRREEEEPPPPOOOORRRRTTTTTTTTIIIIMMMMEEEE
  697.             If nonnegative, commands whose combined user and
  698.             system execution times (measured in    seconds) are
  699.             greater than this value have timing    statistics
  700.             printed for    them.
  701.            RRRRPPPPRRRROOOOMMMMPPPPTTTT
  702.            RRRRPPPPSSSS1111 This prompt    is displayed on    the right-hand side of
  703.             the    screen when the    primary    prompt is being
  704.             displayed on the left.  This does not work if the
  705.             SSSSIIIINNNNGGGGLLLLEEEELLLLIIIINNNNEEEEZZZZLLLLEEEE option is set.  Recognizes the same
  706.             escape sequences as    PPPPRRRROOOOMMMMPPPPTTTT.
  707.            SSSSAAAAVVVVEEEEHHHHIIIISSSSTTTT
  708.             The    maximum    number of history events to save in
  709.             the    history    file.
  710.            SSSSPPPPRRRROOOOMMMMPPPPTTTT
  711.             The    prompt used for    spelling correction.  The
  712.             sequence %%%%RRRR    expands    to the string which presumably
  713.             needs spelling correction, and %%%%rrrr expands to the
  714.             proposed correction.  All other PPPPRRRROOOOMMMMPPPPTTTT escapes are
  715.             also allowed.
  716.            SSSSTTTTTTTTYYYY If this parameter is set in    a command's
  717.             environment, the shell runs    the ssssttttttttyyyy command with
  718.             the    value of this parameter    as arguments in    order
  719.             to set up the terminal before executing the
  720.  
  721.  
  722.  
  723.      Page 11                         (printed 4/24/98)
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  731.  
  732.  
  733.  
  734.             command. The modes apply only to the command, and
  735.             are    reset when it finishes or is suspended.    If the
  736.             command is suspended and continued later with the
  737.             ffffgggg or wwwwaaaaiiiitttt builtins    it will    see the    modes
  738.             specified by STTY, as if it    were not suspended.
  739.             This (intentionally) does not apply    if the command
  740.             is continued via "kill -CONT".  STTY is ignored if
  741.             the    command    is run in the background, or if    it is
  742.             in the environment of the shell but    not explicitly
  743.             assigned to    in the input line. This    avoids running
  744.             stty at every external command by accidentally
  745.             exporting it.  Also    note that STTY should not be
  746.             used for window size specifications; these will
  747.             not    be local to the    command.
  748.            TTTTIIIIMMMMEEEEFFFFMMMMTTTT
  749.             The    format of process time reports with the    ttttiiiimmmmeeee
  750.             keyword.  The default is "%E real  %U user    %S
  751.             system  %P %J".  Recognizes    the following escape
  752.             sequences:
  753.  
  754.             %%%%%%%%     A `%'.
  755.             %%%%UUUU     CPU seconds spent in user mode.
  756.             %%%%SSSS     CPU seconds spent in kernel mode.
  757.             %%%%EEEE     Elapsed time in seconds.
  758.             %%%%PPPP     The CPU percentage, computed as (%U+%S)/%E.
  759.             %%%%JJJJ     The name of this job.
  760.  
  761.            A star may be inserted between the percent sign and
  762.            flags printing time.  This cause    the time to be printed
  763.            in hh:mm:ss.ttt format (hours and minutes are only
  764.            printed if they are not zero).
  765.            TTTTMMMMOOOOUUUUTTTT
  766.             If this parameter is nonzero, the shell will
  767.             receive an AAAALLLLRRRRMMMM signal if a    command    is not entered
  768.             within the specified number    of seconds after
  769.             issuing a prompt. If there is a trap on SSSSIIIIGGGGAAAALLLLRRRRMMMM,
  770.             it will be executed    and a new alarm    is scheduled
  771.             using the value of the TTTTMMMMOOOOUUUUTTTT parametr after
  772.             exececuting    the trap. If no    trap is    set, and the
  773.             idle time of the terminal is not less than the
  774.             value of the TTTTMMMMOOOOUUUUTTTT parameter, zsh terminates.
  775.             Otherwise a    new alarm is scheduled to TTTTMMMMOOOOUUUUTTTT
  776.             seconds after the last keypress.
  777.            TTTTMMMMPPPPPPPPRRRREEEEFFFFIIIIXXXX
  778.             A pathname prefix which the    shell will use for all
  779.             temporary files.  Note that    this should include an
  780.             initial part for the file name as well as any
  781.             directory names.  The default is /tmp/zsh.
  782.            wwwwaaaattttcccchhhh ((((WWWWAAAATTTTCCCCHHHH))))
  783.             An array (colon-separated list) of login/logout
  784.             events to report.  If it contains the single word
  785.             "all", then    all login/logout events    are reported.
  786.  
  787.  
  788.  
  789.      Page 12                         (printed 4/24/98)
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  797.  
  798.  
  799.  
  800.             If it contains the single word "notme", then all
  801.             events are reported    as with    "all" except
  802.             $USERNAME.    An entry in this list may consist of a
  803.             username, an `@' followed by a remote hostname,
  804.             and    a `%' followed by a line (tty).     Any or    all of
  805.             these components may be present in an entry; if a
  806.             login/logout event matches all of them, it is
  807.             reported.
  808.            WWWWAAAATTTTCCCCHHHHFFFFMMMMTTTT
  809.             The    format of login/logout reports if the wwwwaaaattttcccchhhh
  810.             parameter is set.  Default is "%n has %a %l    from
  811.             %m."  Recognizes the following escape sequences:
  812.  
  813.             %%%%nnnn     The name of the user that logged in/out.
  814.             %%%%aaaa     The observed action, i.e. "logged on" or
  815.              "logged off".
  816.             %%%%llll     The line (tty)    the user is logged in on.
  817.             %%%%MMMM     The full hostname of the remote host.
  818.             %%%%mmmm     The hostname up to the    first ".".  If only
  819.              the ip    address    is available or    the utmp field
  820.              contains the name of an X-windows display,
  821.              the whole name    is printed.
  822.             NNNNOOOOTTTTEEEE::::
  823.              The %m    and %M escapes will work only if there
  824.              is a host name    field in the utmp on your
  825.              machine.  Otherwise they are treated as
  826.              ordinary strings.
  827.             %%%%SSSS ((((%%%%ssss))))
  828.              Start (stop) standout mode.
  829.             %%%%UUUU ((((%%%%uuuu))))
  830.              Start (stop) underline    mode.
  831.             %%%%BBBB ((((%%%%bbbb))))
  832.              Start (stop) boldface mode.
  833.             %%%%tttt
  834.             %%%%@@@@     The time, in 12-hour, am/pm format.
  835.             %%%%TTTT     The time, in 24-hour format.
  836.             %%%%wwww     The date in day-dd format.
  837.             %%%%WWWW     The date in mm/dd/yy format.
  838.             %%%%DDDD     The date in yy-mm-dd format.
  839.             %%%%((((xxxx:_t_r_u_e-_t_e_x_t:_f_a_l_s_e-_t_e_x_t))))
  840.              Specifies a ternary expression.  The
  841.              character following the xxxx is arbitrary; the
  842.              same character    is used    to separate the    text
  843.              for the "true"    result from that for the
  844.              "false" result.  Both the separator and the
  845.              right parenthesis may be escaped with a
  846.              backslash.  Ternary expressions may be
  847.              nested.
  848.  
  849.              The test character xxxx may be any one of    llll, nnnn,
  850.              mmmm, or MMMM, which    indicate a "true" result if
  851.              the corresponding escape sequence would
  852.  
  853.  
  854.  
  855.      Page 13                         (printed 4/24/98)
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.      ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))      zzzzsssshhhh vvvveeeerrrrssssiiiioooonnnn 3333....0000 ((((JJJJuuuunnnneeee 22226666,,,,    1111999999996666))))       ZZZZSSSSHHHHPPPPAAAARRRRAAAAMMMM((((1111))))
  863.  
  864.  
  865.  
  866.              return    a non-empty value; or may be aaaa,    which
  867.              indicates a "true" result if the watched user
  868.              has logged in,    or "false" if he has logged
  869.              out.  Other characters    evaluate to neither
  870.              true nor false; the entire expression is
  871.              omitted in this case.
  872.  
  873.              If the    result is "true", then the _t_r_u_e-_t_e_x_t
  874.              is formatted according    to the rules above and
  875.              printed, and the _f_a_l_s_e-_t_e_x_t is    skipped.  If
  876.              "false", the _t_r_u_e-_t_e_x_t    is skipped and the
  877.              _f_a_l_s_e-_t_e_x_t is formatted and printed.  Either
  878.              or both of the    branches may be    empty, but
  879.              both separators must be present in any    case.
  880.  
  881.            WWWWOOOORRRRDDDDCCCCHHHHAAAARRRRSSSS
  882.             A list of nonalphanumeric characters considered
  883.             part of a word by the line editor.
  884.            ZZZZDDDDOOOOTTTTDDDDIIIIRRRR
  885.             The    directory to search for    shell startup files
  886.             (.zshrc, etc), if not $$$$HHHHOOOOMMMMEEEE.
  887.  
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898.  
  899.  
  900.  
  901.  
  902.  
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909.  
  910.  
  911.  
  912.  
  913.  
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.      Page 14                         (printed 4/24/98)
  922.  
  923.  
  924.  
  925.